t=int(input())
for i in range(t):
n,m=map(int,input().split())
s=input()
l=list(s)
a=s.count('0')
b=s.count('1')
if(n==1):
print(n)
elif(n==2):
if(a==b and a==1 and m==1):
print(1)
elif(a!=b and m==2):
print(1)
else:
print(-1)
else:
f1=0
f2=0
c=1
d=-1
e=0
for i in range(len(l)-1):
if(l[i]==l[i+1]):
c+=1
else:
if(c!=m):
f2=1
if(c<m):
d=i+1
else:
d=i+1-(m)
break
else:
c=1
if(c!=m):
f2=1
if(c<m):
d=i+1
else:
d=i+1-(m)
if(d==-1):
print(n)
else:
l=l[d:]+l[:d][::-1]
c=1
for i in range(len(l)-1):
if(l[i]==l[i+1]):
c+=1
else:
if(c!=m):
f1=1
print(-1)
break
else:
c=1
if(c!=m and f1==0):
f1=1
print(-1)
if(f1==0):
print(d)
1704. Determine if String Halves Are Alike | 1732. Find the Highest Altitude |
709. To Lower Case | 1688. Count of Matches in Tournament |
1684. Count the Number of Consistent Strings | 1588. Sum of All Odd Length Subarrays |
1662. Check If Two String Arrays are Equivalent | 1832. Check if the Sentence Is Pangram |
1678. Goal Parser Interpretation | 1389. Create Target Array in the Given Order |
1313. Decompress Run-Length Encoded List | 1281. Subtract the Product and Sum of Digits of an Integer |
1342. Number of Steps to Reduce a Number to Zero | 1528. Shuffle String |
1365. How Many Numbers Are Smaller Than the Current Number | 771. Jewels and Stones |
1512. Number of Good Pairs | 672. Richest Customer Wealth |
1470. Shuffle the Array | 1431. Kids With the Greatest Number of Candies |
1480. Running Sum of 1d Array | 682. Baseball Game |
496. Next Greater Element I | 232. Implement Queue using Stacks |
844. Backspace String Compare | 20. Valid Parentheses |
746. Min Cost Climbing Stairs | 392. Is Subsequence |
70. Climbing Stairs | 53. Maximum Subarray |